package com.younion.vo;

import java.util.Date;

import com.younion.common.constants.RechargeType;
import com.younion.util.DateUtil;

import cpcns.component.common.base.BaseVO;
import cpcns.persister.converter.IDomainObject;
import cpcns.persister.service.CompositeID;


 
public class RechargeLogVO extends BaseVO implements IDomainObject,Cloneable{

	/**  */
	private static final long serialVersionUID = -1L;

	 
	private Integer id;

 
	private String type;

	 
	
	private MemberCardVO membercard;
	private ProductVO product;
	private UserVO operator;

	 
	private Double money;
 
	private Integer count;

	 
	private String description;

	 
	private Date createDate;
	
	private Date gtcreateDate;
	private Date ltcreateDate;
	private Integer gtcount;
	private Integer ltcount;
	private Double gtmoney;
	private Double ltmoney;
	
	private CustomerVO customer;
	
	private Integer memberCardId;
	private String memberName;
	private Integer operatorId;
	private String operatorName;
	private Integer customerId;
	private String customerName;
	private Integer productId;
	private String productName;
	private String memberCode;
	

	/**
	 * 
	 */
	public RechargeLogVO() {
	}

	/** 
	 * @return the id
	 */ 
	public Integer getId() {
		return id;
	}

	/** 
	 * @param id the id to set 
	 */ 
	public void setId(Integer id) {
		this.id = id;
	}

	/** 
	 * @return the type
	 */ 
	public String getType() {
		return type;
	}

	/** 
	 * @param type the type to set 
	 */ 
	public void setType(String type) {
		this.type = type;
	}

	/** 
	 * @return the productId
	 */ 

	/** 
	 * @return the money
	 */ 
	public Double getMoney() {
		return money;
	}

	/** 
	 * @param money the money to set 
	 */ 
	public void setMoney(Double money) {
		this.money = money;
	}

	/** 
	 * @return the count
	 */ 
	public Integer getCount() {
		return count;
	}

	/** 
	 * @param count the count to set 
	 */ 
	public void setCount(Integer count) {
		this.count = count;
	}

	/** 
	 * @return the description
	 */ 
	public String getDescription() {
		return description;
	}

	/** 
	 * @param description the description to set 
	 */ 
	public void setDescription(String description) {
		this.description = description;
	}

	/** 
	 * @return the createDate
	 */ 
	public Date getCreateDate() {
		return createDate;
	}

	/** 
	 * @param createDate the createDate to set 
	 */ 
	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	public CompositeID getCompositeID(){
		CompositeID _id = super.getCompositeID();
		_id.clear();
		if(id != null){
			_id.addKey("id", id);
		}
		return _id;
	}

	public MemberCardVO getMembercard() {
		return membercard;
	}

	public void setMembercard(MemberCardVO membercard) {
		this.membercard = membercard;
	}

	public ProductVO getProduct() {
		return product;
	}

	public void setProduct(ProductVO product) {
		this.product = product;
	}
	
	public String getTypeTitle() {
		return (getType() == null || "".equals(getType())) ? null : RechargeType.valueOfName(getType()).getTitle();
	}

	public Date getGtcreateDate() {
		return gtcreateDate;
	}

	public void setGtcreateDate(Date gtcreateDate) {
		this.gtcreateDate = gtcreateDate;
	}

	public Date getLtcreateDate() {
		return ltcreateDate;
	}

	public void setLtcreateDate(Date ltcreateDate) {
		this.ltcreateDate = ltcreateDate;
	}
	
	public UserVO getOperator() {
		return operator;
	}

	public void setOperator(UserVO operator) {
		this.operator = operator;
	}
	
	

	public Integer getGtcount() {
		return gtcount;
	}

	public void setGtcount(Integer gtcount) {
		this.gtcount = gtcount;
	}

	public Integer getLtcount() {
		return ltcount;
	}

	public void setLtcount(Integer ltcount) {
		this.ltcount = ltcount;
	}

	public String getGtcreateDateStr() {
		return DateUtil.toStrDateFromUtilDateByFormat(gtcreateDate, DateUtil.DATE_TIME_FORMAT_YYYY_MM_DD_HH_MI_SS);
	}
	
	public String getLtcreateDateStr() {
		return DateUtil.toStrDateFromUtilDateByFormat(ltcreateDate, DateUtil.DATE_TIME_FORMAT_YYYY_MM_DD_HH_MI_SS);
	}

	public Double getGtmoney() {
		return gtmoney;
	}

	public void setGtmoney(Double gtmoney) {
		this.gtmoney = gtmoney;
	}

	public Double getLtmoney() {
		return ltmoney;
	}

	public void setLtmoney(Double ltmoney) {
		this.ltmoney = ltmoney;
	}

	public CustomerVO getCustomer() {
		return customer;
	}

	public void setCustomer(CustomerVO customer) {
		this.customer = customer;
	}

	public Integer getMemberCardId() {
		return memberCardId;
	}

	public void setMemberCardId(Integer memberCardId) {
		this.memberCardId = memberCardId;
	}

	public String getMemberName() {
		return memberName;
	}

	public void setMemberName(String memberName) {
		this.memberName = memberName;
	}

	public Integer getOperatorId() {
		return operatorId;
	}

	public void setOperatorId(Integer operatorId) {
		this.operatorId = operatorId;
	}

	public String getOperatorName() {
		return operatorName;
	}

	public void setOperatorName(String operatorName) {
		this.operatorName = operatorName;
	}

	public Integer getCustomerId() {
		return customerId;
	}

	public void setCustomerId(Integer customerId) {
		this.customerId = customerId;
	}

	public String getCustomerName() {
		return customerName;
	}

	public void setCustomerName(String customerName) {
		this.customerName = customerName;
	}

	public Integer getProductId() {
		return productId;
	}

	public void setProductId(Integer productId) {
		this.productId = productId;
	}

	public String getProductName() {
		return productName;
	}

	public void setProductName(String productName) {
		this.productName = productName;
	}

	public String getMemberCode() {
		return memberCode;
	}

	public void setMemberCode(String memberCode) {
		this.memberCode = memberCode;
	}
	
	
}
